System and method for quality of service in a wireless network environment

ABSTRACT

Disclosed herein are systems, methods, and non-transitory computer-readable storage media for providing on-demand quality of service guarantees in a wireless network environment. The system determines an on-demand quality of service for a segment of a communication path between a user equipment communicating with a radio access network connected to a core network and an external network connected to the core network. The system then determines if the on-demand quality of service for the segment meets a quality of service requirement. If the on-demand quality of service for the segment does not meet the quality of service requirement, the system identifies an alternate communication path between the user equipment and the external network, wherein the alternate communication path differs from the communication path. The system can then setup the alternate communication path for traffic between the user equipment and the external network.

PRIORITY INFORMATION

The present application is a continuation of U.S. patent applicationSer. No. 15/471,659, which is a continuation of U.S. Patent ApplicationNo. 14/457,187, filed Aug. 12, 2014, now U.S. Pat. No. 9,615,288, whichis a continuation of U.S. patent application Ser. No. 13/555,915, filedJuly 23, 2012, now U.S. Pat. No. 8,805,382, issued Aug. 12, 2014, thecontent of which is incorporated herein by reference in its entirety.

BACKGROUND 1. Technical Field

The present disclosure relates to wireless communications and morespecifically to on-demand quality of service guarantees in a wirelessnetwork environment.

2. Introduction

The increasing use of mobile applications has prompted a growing demandfor mobile access to online content. Online applications, such asmultimedia online gaming, content streaming, mobile TV, and Web 2.0,have quickly emerged to serve this growing demand for mobile dataconnectivity. However, online applications often face difficultchallenges resulting from network and performance limitations. Forexample, the quality of the online experience provided by onlineapplications depends largely on the quality of the network andavailability of high-speed data. Yet the quality of the network andavailability of high-speed data is often limited and difficult tocontrol and predict, particularly as the application performance demandsand diversity of the network increase. These challenges have catapultedefforts to improve current wireless access technologies to keep pacewith the increasing network and data quality and performance demands ofonline applications.

One such effort is the 3GPP Long Term Evolution (LTE) standard forwireless communications. LTE provides a standard for wirelesscommunications of high-speed data for mobile phones and data terminals,which brings substantial performance improvements and a significantlyenhanced user experience with full mobility. LTE, through its radioaccess, the Evolved UMTS Terrestrial Radio Access Network (E-UTRAN),provides improved throughputs, higher capacity, and better overallperformance. But while LTE brings significant benefits, it also facessignificant hurdles in Quality of Service (QoS) control. Unliketraditional telecommunications networks, which implement traditional QoSapproaches such as best-effort delivery, network resources reservation,or packet marking on data communication paths, LTE frequently utilizesdifferent logical paths for signaling and data transfer. As a result,traditional QoS approaches are often inadequate in the LTE context.

LTE overcomes some of the inadequacies of traditional QoS approaches byimplementing a policy entity which links the signaling and data transferplanes to allow QoS at the data transfer plane. Currently, the policyentity can enforce pre-defined QoS parameter values and change thesevalues according to a local configuration or instructions from anotherpolicy entity. However, the policy entity is unable to adapt to meet arequired on-demand QoS that cannot otherwise be met due to networkresource constraints; this on-demand QoS is simply denied. Accordingly,LTE networks are limited in their capacity to meet a user applicationQoS, such as throughput, minimum delays, and minimum interruption inuser data transfer, when a network resource, such as the radio access,has reached an upper capacity limit.

SUMMARY

Additional features and advantages of the disclosure will be set forthin the description which follows, and in part will be obvious from thedescription, or can be learned by practice of the herein disclosedprinciples. The features and advantages of the disclosure can berealized and obtained by means of the instruments and combinationsparticularly pointed out in the appended claims. These and otherfeatures of the disclosure will become more fully apparent from thefollowing description and appended claims, or can be learned by thepractice of the principles set forth herein.

The approaches set forth herein can be implemented to provide quality ofservice guarantees in a wireless network environment. For example, theseapproaches can be implemented to provide on-demand quality of service inan LTE network. Moreover, these approaches can be implemented to ensurethat a requested on-demand quality of service is not simply denied in anabsence of network resources. When a capacity limit is reached in awireless network environment, these approaches can be used to reroutetraffic in order to meet an on-demand quality of service and avoidinterruptions. This way, an individual subscriber's data and serviceneeds are not denied during or after a call setup, and delays andinterruptions in user data transfer are reduced to a minimum. Inaddition, an individual subscriber can experience an improvedperformance from an increase in available bandwidth and a maximum datarate per cell.

Disclosed are systems, methods, and non-transitory computer-readablestorage media for providing on-demand QoS control in a wireless networkenvironment. First, the system determines an on-demand quality ofservice for a segment of a communication path between a user equipmentcommunicating with a radio access network connected to a core networkand an external network connected to the core network. The system candetermine the on-demand quality of service for the segment by monitoringnetwork interfaces and calculating quality of service relatedmeasurements for the segment. In one embodiment, the system determinesthe on-demand quality of service by monitoring and evaluatingperformance management and fault management data. The segment can be aportion of the communication path or the entire communication path. Forexample, the on-demand quality of service for a segment of acommunication path can be an on-demand quality of service for a portionof the communication path, or can be an end-to-end, on-demand quality ofservice for the communication path. The radio access network can be aUMTS terrestrial radio access network, an evolved UMTS terrestrial radioaccess network, a GSM radio access network, a GSM EDGE radio accessnetwork, etc. Moreover, the core network can be an evolved packet corenetwork, a packet data network, a provider network, and so forth.

Next, the system determines if the on-demand quality of service for thesegment meets a quality of service requirement. The quality of servicerequirement can be a quality of service requested from a policy entity,for example. In one embodiment, the quality of service requirement is anapplication quality of service need. The system can determine if theon-demand quality of service for the segment meets the quality ofservice requirement by comparing the quality of service requirement withquality of service related measurements associated with the on-demandquality of service for the segment and/or communication path. Thequality of service related measurements can include, for example, abandwidth, a signal power, a bit rate, a delay, a loss, a jitter, etc.

If the on-demand quality of service for the segment does not meet thequality of service requirement, the system identifies an alternatecommunication path between the user equipment and the external network,wherein the alternate communication path differs from the communicationpath. The system can then establish the alternate communication path forthe communication session. In one embodiment, the system provides a listof alternate communication paths to a mobility management entity, andthe mobility management entity sets up and coordinates an alternatecommunication path from the list of alternate communication paths.

The alternate communication path can be a different communication paththat is capable of meeting the quality of service requirement. Thealternate communication path can also be, for example, a bestcommunication path from a list of communication paths. Moreover, thealternate communication path can include one or more networks and/ornetwork devices from the communication path. For example, the alternatecommunication path can add/subtract one or more networks and/or networkdevices to the communication path.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features of the disclosure can be obtained, a moreparticular description of the principles briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understanding that these drawingsdepict only exemplary embodiments of the disclosure and are nottherefore to be considered to be limiting of its scope, the principlesherein are described and explained with additional specificity anddetail through the use of the accompanying drawings in which:

FIG. 1 illustrates an example system embodiment;

FIG. 2 illustrates an exemplary network architecture for on-demandquality of service;

FIG. 3 illustrates an exemplary 3GPP long term evolution architecturefor on-demand quality of service;

FIG. 4 illustrates an example of an alternate path for communication inan exemplary long term evolution architecture for on-demand quality ofservice; and

FIG. 5 illustrates an example method embodiment.

DETAILED DESCRIPTION

Various embodiments of the disclosure are discussed in detail below.While specific implementations are discussed, it should be understoodthat this is done for illustration purposes only. A person skilled inthe relevant art will recognize that other components and configurationsmay be used without parting from the spirit and scope of the disclosure.

The present disclosure addresses the need in the art for on-demandquality of service (QoS) in wireless network environments. A system,method and non-transitory computer-readable media are disclosed whichdetect on-demand QoS needs in a wireless network environment, such as a3GPP Long Term Evolution (LTE) network, and takes appropriate action tomeet the on-demand QoS needs, even in the absence of network resources.A brief introductory description of a basic general purpose system orcomputing device in FIG. 1, which can be employed to practice theconcepts, is disclosed herein. A more detailed description of on-demandQoS in a wireless network environment will then follow. Severalvariations shall be discussed herein as the various embodiments are setforth. The disclosure now turns to FIG. 1.

With reference to FIG. 1, an exemplary system 100 includes ageneral-purpose computing device 100, including a processing unit (CPUor processor) 120 and a system bus 110 that couples various systemcomponents including the system memory 130 such as read only memory(ROM) 140 and random access memory (RAM) 150 to the processor 120. Thesystem 100 can include a cache 122 of high speed memory connecteddirectly with, in close proximity to, or integrated as part of theprocessor 120. The system 100 copies data from the memory 130 and/or thestorage device 160 to the cache 122 for quick access by the processor120. In this way, the cache provides a performance boost that avoidsprocessor 120 delays while waiting for data. These and other modules cancontrol or be configured to control the processor 120 to perform variousactions. Other system memory 130 may be available for use as well. Thememory 130 can include multiple different types of memory with differentperformance characteristics. It can be appreciated that the disclosuremay operate on a computing device 100 with more than one processor 120or on a group or cluster of computing devices networked together toprovide greater processing capability. The processor 120 can include anygeneral purpose processor and a hardware module or software module, suchas module 1 162, module 2 164, and module 3 166 stored in storage device160, configured to control the processor 120 as well as aspecial-purpose processor where software instructions are incorporatedinto the actual processor design. The processor 120 may essentially be acompletely self-contained computing system, containing multiple cores orprocessors, a bus, memory controller, cache, etc. A multi-core processormay be symmetric or asymmetric.

The system bus 110 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, and alocal bus using any of a variety of bus architectures. A basicinput/output (BIOS) stored in ROM 140 or the like, may provide the basicroutine that helps to transfer information between elements within thecomputing device 100, such as during start-up. The computing device 100further includes storage devices 160 such as a hard disk drive, amagnetic disk drive, an optical disk drive, a solid-state drive, a tapedrive or the like. The storage device 160 can include software modules162, 164, 166 for controlling the processor 120. Other hardware orsoftware modules are contemplated. The storage device 160 is connectedto the system bus 110 by a drive interface. The drives and theassociated computer readable storage media provide nonvolatile storageof computer readable instructions, data structures, program modules andother data for the computing device 100. In one aspect, a hardwaremodule that performs a particular function includes the softwarecomponent stored in a non-transitory computer-readable medium inconnection with the necessary hardware components, such as the processor120, bus 110, display 170, and so forth, to carry out the function. Thebasic components are known to those of skill in the art and appropriatevariations are contemplated depending on the type of device, such aswhether the device 100 is a small, handheld computing device, a desktopcomputer, or a computer server.

Although the exemplary embodiment described herein employs the hard disk160, it should be appreciated by those skilled in the art that othertypes of computer readable media which can store data that areaccessible by a computer, such as magnetic cassettes, flash memorycards, digital versatile disks, cartridges, random access memories(RAMs) 150, read only memory (ROM) 140, a cable or wireless signalcontaining a bit stream and the like, may also be used in the exemplaryoperating environment. Non-transitory computer-readable storage mediaexpressly exclude media such as energy, carrier signals, electromagneticwaves, and signals per se.

To enable user interaction with the computing device 100, an inputdevice 190 represents any number of input mechanisms, such as amicrophone for speech, a touch-sensitive screen for gesture or graphicalinput, keyboard, mouse, motion input, speech and so forth. An outputdevice 170 can also be one or more of a number of output mechanismsknown to those of skill in the art. In some instances, multimodalsystems enable a user to provide multiple types of input to communicatewith the computing device 100. The communications interface 180generally governs and manages the user input and system output. There isno restriction on operating on any particular hardware arrangement andtherefore the basic features here may easily be substituted for improvedhardware or firmware arrangements as they are developed.

For clarity of explanation, the illustrative system embodiment ispresented as including individual functional blocks including functionalblocks labeled as a “processor” or processor 120. The functions theseblocks represent may be provided through the use of either shared ordedicated hardware, including, but not limited to, hardware capable ofexecuting software and hardware, such as a processor 120, that ispurpose-built to operate as an equivalent to software executing on ageneral purpose processor. For example the functions of one or moreprocessors presented in FIG. 1 may be provided by a single sharedprocessor or multiple processors. (Use of the term “processor” shouldnot be construed to refer exclusively to hardware capable of executingsoftware.) Illustrative embodiments may include microprocessor and/ordigital signal processor (DSP) hardware, read-only memory (ROM) 140 forstoring software performing the operations discussed below, and randomaccess memory (RAM) 150 for storing results. Very large scaleintegration (VLSI) hardware embodiments, as well as custom VLSIcircuitry in combination with a general purpose DSP circuit, may also beprovided.

The logical operations of the various embodiments are implemented as:(1) a sequence of computer implemented steps, operations, or proceduresrunning on a programmable circuit within a general use computer, (2) asequence of computer implemented steps, operations, or proceduresrunning on a specific-use programmable circuit; and/or (3)interconnected machine modules or program engines within theprogrammable circuits. The system 100 shown in FIG. 1 can practice allor part of the recited methods, can be a part of the recited systems,and/or can operate according to instructions in the recitednon-transitory computer-readable storage media. Such logical operationscan be implemented as modules configured to control the processor 120 toperform particular functions according to the programming of the module.For example, FIG. 1 illustrates three modules Mod1 162, Mod2 164 andMod3 166 which are modules configured to control the processor 120.These modules may be stored on the storage device 160 and loaded intoRAM 150 or memory 130 at runtime or may be stored as would be known inthe art in other computer-readable memory locations.

Having disclosed some components of a computing system, the disclosurenow turns to FIG. 2, which illustrates an exemplary network architecture200 for on-demand Quality of Service. The phone 202 and the computer 212can communicate via the network architecture 200. The networkarchitecture 200 includes a radio access network 204, a core network206, and an external network 208. The radio access network 204 serves asan air interface, residing between the phone 202 and the core network206, and providing a communication link to the core network 206. Forexample, the radio access network 204 can provide a radio-basedcommunication link between the core network 206 and wireless devices,such as phones, computers, portable media devices, gaming systems, GPSdevices, network televisions, Femtocells, conferencing systems, basestations, wireless terminals, mobile stations, etc. The radio accessnetwork 204 can include various telecommunication devices, systems,and/or networks. Non-limiting examples of such devices, systems, andnetworks include Femto-cell technology, Wi-Fi, Global System for MobileCommunications (GSM) systems, GSM Radio Access Networks (GRANs), GSMEDGE Radio Access Networks (GERANs), Universal Terrestrial Radio AccessNetworks (UTRANs), Evolved Universal Terrestrial Radio Access Networks(E-UTRANs), Worldwide Interoperability for Microwave Access (WiMAX)systems, and so forth. Moreover, the radio access network 204 can carrymany types of traffic and signaling, such as circuit switched (e.g.,voice and data) and packet-switched (e.g., internet protocol (IP),asynchronous transfer mode (ATM), and/or frame relay) traffic andsignaling.

The core network 206 can be, for example, a provider network, anenterprise backbone, a packet data network, an evolved packet corenetwork, etc. The core network 206 communicates with the phone 206 viathe radio access network 204. The core network 206 can also communicatewith other wireless devices via the radio access network 204 or anyother radio access device. If a wireless device has dual-modecapabilities, the core network 2006 can connect to the wireless devicevia multiple radio access networks which are simultaneously connected tothe wireless device. Further, the core network 206 connects the phone202 with an external network 208. In particular, the core network 206communicates with the external network 208 via a router, such as apacket data network gateway, to provide a link between the phone 206 andthe external network 208.

The external network 208 can be, for example, a mobile services network,an operator services network, an internet service provider, a publicswitched telephone network, a packet-switched network, acircuit-switched network, an IP Multimedia Subsystem (IMS) network, anLTE network, an LTE advanced network, a cellular network, a wirelessnetwork, and so forth. Moreover, the external network 208 can include apublic network, such as the Internet, and/or a private network, such asa local area network (LAN), a home network, a virtual private network(VPN), an intranet, an enterprise network, and virtually any other formof network. The external network 208 can provide multiple services tothe phone 202, such as voice, data, Internet, multimedia, broadband,messaging, push to talk, conferencing, gaming, web, voice over IP(VoIP), and streaming services, for example. Also, the external network208 can connect one or more devices to the phone 202 via the corenetwork 206.

In FIG. 2, the computer 212 can communicate with the phone 202 via thecommunication path 204, 206, 208. The monitor 210 can monitor thecommunication along the communication path 204, 206, 208 to detecton-demand QoS needs and coordinate an alternate route 214 when necessaryto meet a QoS requirement. If, during a communication session, themonitor 210 detects a problem at the radio access network 204, the corenetwork 206, and/or the external network 208, the monitor 210 cancoordinate an alternate route 214 to allow the communication between thephone 202 and the computer 212 to continue within the QoS requirements.For example, if the monitor 210 detects that the radio access network204 has reached a capacity limit, the monitor 210 can coordinate analternate route 214 for the communication between the phone 202 and thecore network 206, the external network 208, or the computer 212. In oneembodiment, the monitor 210 monitors the communication along thecommunication path 204, 206, 208 to detect on-demand QoS needs andprovides a list of alternate paths to a policy entity when thecommunication path 204, 206, 208 is unable to meet a QoS requirement.The QoS requirement can be a pre-defined QoS parameter associated withan application, such as a presence services, messaging, push to talkover cellular, voice, video, conferencing services, IP multimediaservices, VoIP, and online gaming application. The QoS requirement canalso be a QoS request from an application or device. In one embodiment,the QoS requirement is a QoS request from a policy entity.

The alternate route 214 allows the communication between the phone 202and the computer 212 to be rerouted in order to continue communicatingwithin the QoS requirement(s). For example, if the radio access network204 has no available capacity, the alternate route can avoid the radioaccess network 204 by routing traffic through a different device and/ornetwork. The alternate route 214 can include virtually any network andnetwork device, such as a femtocell, a GPS receiver, a Wi-Fi network, ahome network, a base station, an antenna, a modem, a WIMAX network, adifferent radio access network, a wireless terminal, an IMS network, andso forth. The alternate route 214 can also include a portion of thecommunication path 204, 206, 208. For example, the alternate route caninclude a wireless local area network, the core network 206, and theexternal network 208.

The monitor 210 can be any network device configured to monitor acommunication between the radio access network 204, the core network 206and the external network 208. The monitor 210 can include storage andevaluating capabilities, to collect, process, and analyze QoS relatedmeasurements. For example, the monitor 210 can be a network server, asoftware agent, a wireless terminal, a router, a service level agreement(SLA) monitor, a surveillance server, a computer, a monitoring system,or any device configured to calculate QoS measurements. The monitor 210can reside in the core network 206, the external network 208, or aseparate network, which can include one or more networks. In oneembodiment, the monitor 210 is a surveillance server configured tomonitor performance management (PM) data and fault management (FM) data.A system and method for monitoring some selected PM data is furtherexplained in U.S. patent application Ser. No. 12/712,424, filed on Feb.25, 2010, titled “Timed Fingerprint Locating In Wireless Networks,” thecontents of which are incorporated by reference herein in theirentirety.

The monitor 210 can monitor the interfaces on the radio access network204, the core network 206, and the external network 208, and calculateQoS related measurements, such as bandwidth, delay, loss, signal power,bit rate, jitter, congestion, error rates, etc. The monitor 210 can thenanalyze the QoS related measurements to determine if a requested QoS foran application, such as LTE VoIP, can be met. If the monitor 210determines that the requested QoS cannot be met, the monitor 210 canidentify the alternate route 214 as an alternative communication path.The monitor 210 can also select the alternate route 214 from a list ofalternate routes, or provide the list of alternate routes to a remotedevice, so the remote device can select the alternate route 214. Themonitor 210 and/or the other device can then coordinate the alternateroute 214 as an alternative communication path. The alternate route 214can be a best alternate route from a list of alternate routes, forexample. The alternate route 214 can also be selected/identified basedon various factors, such as bandwidth, capacity, QoS, a status, aparameter, a history, a cost, a schedule, a time, a service, a topology,a performance requirement, an application, a location, a distance, aduration, a configuration, a reliability, an agreement, an analysis, astatistic, and so forth.

The principles set forth herein can be applied to varioustelecommunication devices, systems, and/or networks. Non-limitingexamples of such devices, systems, and networks include WiMAX, WiFi,Femtocell technology, LTE, LTE Advanced, General Packet Radio Service(GPRS), Enhanced GPRS, Universal Mobile Telecommunications System(UMTS), GSM, GRAN, GERAN, UTRAN, E-UTRAN, IMS, 3GPP2 Ultra MobileBroadband (UMB), High Speed packet Access (HSPA), High Speed DownlinkPacket Access (HSDPA), High Speed Uplink Packet Access (HSUPA), WidebandCode Division Multiple Access (W-CDMA), Enhanced Data rates for GSMEvolution (EDGE), etc. The principles set forth herein can also beapplied to legacy telecommunication technologies.

FIG. 3 illustrates an exemplary long term evolution architecture 300 foron-demand quality of service. Here, the user equipment 302 communicateswith the E-UTRAN 304 via the LTE-Uu interface, which is the airinterface between the user equipment 302 and E-UTRAN 304. The userequipment 302 can be any wireless device, such as a mobile phone, acomputer, an online gaming system, a conferencing system, a multimediaplayer, a base station, a handset, an access terminal, a subscriberstation, a wireless terminal, or any device used to receive and/ortransmit data, packets, frames, signals, text, voice, video, audio,image, and any other data or signaling stream. The E-UTRAN 304interfaces with the serving gateway 306 via the S1-u interface, and themobility management entity (MME) 312 via the S1-MME interface.

The serving gateway 306 routes and forwards user data packets, andrelays traffic between the PDN gateway 308 and GPRS core networks,serving as a mobility anchor between the LTE network and the GPRS corenetworks. In FIG. 3, the serving gateway 308 relays traffic between theGPRS core network 330 and the PDN gateway 308. Here, the serving gateway308 communicates with the serving GPRS support node (SGSN) 326 via theS4 interface, and the SGSN 326 communicates with the GERAN 324 and theUTRAN 328 via the Gb and lu interfaces, respectively. The servinggateway 306 is also responsible for handovers with neighboring elementsin the E-UTRAN 304, such as evolved node b elements, for example. Theserving gateway 306 can monitor and maintain context information relatedto the user equipment 302 during idle state, and generate pagingrequests when data for the user equipment 302 arrives from the network(i.e., on downlink). Moreover, the serving gateway 306 can replicateuser traffic in case of lawful interception.

The MME 312 is the control node for the E-UTRAN 304. The MME 312 managesand stores user equipment 302 context, such as user identity, mobilitystate, security parameters, and generates temporary identities for theuser equipment 302. The MME 312 is responsible for choosing the servinggateway 306 for the user equipment 302. The MME 312 communicates withthe serving gateway 306 via the S11 interface. The MME 312 can alsocommunicate with other MMEs via the S10 interface. The MME 312 is alsoresponsible for authenticating the user on the user equipment 302. TheMME 312 authenticates the user by interacting with the home subscriberserver (HSS) 314 via the S6 a interface. The HSS 314 is a centraldatabase that contains information relating to the user andsubscription. Moreover, the MME 312 interfaces with the SGSN 326 in theGPRS core network 330 via the S3 interface. The S3 interface allows foruser and bearer information exchange for access network mobility in idleand/or active state.

The PDN gateway 308 interfaces with the external network 310 via the SGiinterface. Accordingly, the PDN gateway 308 connects the user equipment302 to the external network 310. The external network 310 can be aservice provider, a public switched telephone network, a packet datanetwork, a circuit-switched network, an IMS network, an internetbackbone, an operator services network, a packet-switched network, acore network, an LTE network, an LTE advanced network, a mobile network,a cellular network, a GPRS network, and so forth. Moreover, the externalnetwork 310 can include a public network, such as the Internet, and/or aprivate network, such as a local area network, an intranet, an extranet,a virtual private network, a home network, a corporate network, etc.Further, the external network 310 can provide various types of onlineservices, such as mobile broadband, text, audio, video, voice,multimedia content, VoIP, IP television, messaging, Internet, IMS,conferencing, push to talk, streaming, online gaming, data, and soforth.

The PDN gateway 308 can connect the user equipment 302 to externalnetworks by being the point of exit and entry of traffic destined to theuser equipment 302. Thus, the PDN gateway 308 can provide the userequipment 302 access to various telecommunication technologies andoperator IP services, such as IMS, Internet, mobile broadband,multimedia content, application servers, core services, messaging,conferencing, voice, video, data, VoIP, LTE VoIP, packet switchedstream, and so forth. In one embodiment, the PDN gateway 308 connectsthe user equipment 302 with multiple external networks. In anotherembodiment, the user equipment 302 can have simultaneous connectivitywith multiple PDN gateways for accessing multiple external networks. ThePDN gateway 308 can also perform policy enforcement, packet filteringfor users, charging support, lawful interception, packet screening, etc.

The PDN gateway 308 communicates with a policy and charging rulesfunction (PCRF) 316 and a policy and charging enforcement function(PCEF) 318 to determine and enforce policy rules for subscribers on thenetwork. The PCRF 316 can be a policy server or a policy decisionfunction, for example. The PCRF 316 can be a centralized device actingas a policy decision point for the wireless operator. The PCRF 316 canalso be a software component configured to access subscriber databasesand charging systems to determine policy rules and make policydecisions. The PCEF 318 can be a centralized device or a softwarecomponent on the PDN gateway 308. The PDN gateway 308, PCRF 316, andPCEF 318 can also be placed on the same device or chassis. The PCEF 318can enforce QoS parameter values assigned by the MME 312 based on thesubscription information retrieved from the HSS 314, and can changethese values in interaction with the PCRF 316 and/or according to alocal configuration. In FIG. 3, the PCEF 318 is a software componentthat resides in the PDN gateway 308, and the PCRF 316 is a softwarecomponent that resides in a centralized device which communicates withthe PDN gateway 308 via the S7 interface, and the external network 310via the Rx interface.

The server 320 monitors the communication path between the userequipment 302 and the external network 310 to obtain QoS relatedinformation, such as bandwidth, delay, loss, bit rate, jitter, signalpower, error rate, congestion, etc. For example, the server 320 canmonitor FM and/or PM data in the communication path to calculate QoSmeasurements. Here, the server 320 can be, for example, a surveillanceserver with PM and FM monitoring and evaluating capabilities. The server320 can be any device configured to monitor the communication path, suchas a server, a router, a software agent, a computer, a phone, etc. Theserver 320 can also be configured to collect, process, and analyze QoSdata. In one aspect, the server 320 is a monitoring device withnetworking capabilities, configured to monitor the communication pathand transmit data statistics to another device for analysis. In anotheraspect, the sever 320 is a service level agreement (SLA) monitor.

The server 320 can use the QoS related information to determine if arequired QoS for an application can be met. For example, the server 320can monitor the LTE-Uu, S1-u, S5, and/or SGi interfaces, calculate QoSrelated measurements (e.g., bandwidth, delay, loss), and decide if a QoSrequirement for an application, such as LTE VoIP, requested from thePCEF 318 and/or pre-defined as a QoS parameter, can be met. If based onthe QoS related measurements, the server 320 determines that the QoSrequirement cannot be met, the server 320 can identify an alternate path322. The server 320 can also provide a list of alternate paths to theMME 312. The alternate paths can include different communication pathswhich can be used to connect the user equipment 302 and the externalnetwork 310. A communication path can include, for example, networksand/or networking devices used to establish a communication between theuser equipment 302 and the external network 310. After receiving thelist of alternate paths, the MME 312 can coordinate the alternate path322 to connect the user equipment 302 to the external network 310. Forexample, if the server 320 determines that the E-UTRAN 304 and the S5bearer have reached an upper capacity limit, the MME 312 can ensure thata QoS requirement requested from the PCEF 318 is met by coordinating abest alternate bearer (route) to transfer user packets coming fromexternal IP services, such as IMS, to the PDN gateway 308, and from thePDN gateway 308 to the user equipment 302. This way, the MME 312 canensure that an end-to-end QoS is met.

As illustrated in FIG. 3, the MME 312 can coordinate an alternate bearerpath from the PDN gateway 308 to the serving gateway 306, the E-UTRAN304, or the user equipment 302. For example, if the server 320determines that a QoS requirement for an application cannot be metbecause of a problem with the E-UTRAN 304, the MME 312 can setup thealternate path 322 to the user equipment 302 using a Femtocell, insteadof the E-UTRAN 304, in order to meet the QoS requirement for theapplication. Here, the user equipment 302 can connect with the servinggateway 306 via the Femtocell, and the serving gateway 306 can forwardtraffic to the external network 310 via the PDN gateway 308. Thus, inthis example, the alternate path 322 between the user equipment 302 andthe external network 310 can include the Femtocell, the serving gateway306, and the PDN gateway 308.

The server 320 can also be configured to identify the location of theuser equipment 302 and determine if the user equipment 302 is within anallowed Femtocell area. In this case, the server 320 can notify the MME312 when it detects that the user equipment 302 is within an allowedFemtocell area, so the MME 312 can decide how to setup the alternatepath 322 to the user equipment 302. This can be done during and/or afterthe attach procedure (i.e., when the user equipment 302 attaches to thenetwork). As another example, if the server 320 determines that theE-UTRAN is unable to meet a QoS requirement requested from the PCEF 318,the MME 312 can ensure that the QoS requirement is met by coordinatingthe alternate path 322 to transfer packets from the serving gateway 306to the UTRAN 328, and from the UTRAN 328 to the user equipment 302.

FIG. 4 illustrates an example of an alternate path for communication inan exemplary long term evolution architecture 400 for on-demand qualityof service. In this example, the long term evolution architecture 400includes the E-UTRAN 404, the serving gateway 406, the PDN gateway 408,the MME 412, the HSS 414, the PCRF 416, the PCEF 418, and the server420. The phone 402 communicates with the network 410 via the E-UTRAN404, the serving gateway 406, and the PDN gateway 408. The server 420monitors each segment of the communication path between the phone 402and the network 410, which includes the segments between the phone 402and the E-UTRAN 404, the E-UTRAN 404 and the serving gateway 406, theserving gateway 406 and the PDN gateway 408, and the PDN gateway 408 andthe network 410, to calculate QoS measurements. The server 420 receivesa QoS requirement for the communication session from the PCEF 418, andcompares the QoS requirement with the QoS measurements to determine ifthe on-demand QoS requirements for the communication session can be met.In another embodiment, the server 420 compares pre-defined QoSparameters associated with an application with the QoS measurements todetermine if the on-demand QoS requirements for the communicationsession can be met.

If the on-demand QoS requirements cannot be met, the server 420 providesan alternate path 426 to the MME 412, which the MME 412 can setup toensure the on-demand QoS requirements are met. Alternatively, the server420 can provide a list of alternate paths to the MME 412, which the MME412 can use to select the alternate path 426. The MME 412 can select thealternate path 426 based on a parameter, a topology, a context, ahistory, a threshold, a status, a quality of service, a performance, ananalysis, a best candidate, an availability of resources, a schedule, acost, a policy, congestion feedback, traffic conditions, and/or anyother criteria. In FIG. 4, the alternate path 426 includes a Femtocell422 and a serving gateway 424. Here, the phone 402 communicates with theFemtocell 422, which interfaces with the serving gateway 424. Theserving gateway 424 then transfers the packets from the Femtocell 422 tothe PDN gateway 408. Finally, the PDN gateway 408 can link the phone 402to the network 410. The alternate path 426 can reduce delays andinterruptions in user data transfer and ensure that an end-to-endquality of service is met throughout the communication session. If thelong term evolution architecture 400 experiences an absence of networkresources, a capacity limit, an error, etc., the MME 412 can setup thealternate path 426 to avoid interruptions of service and connectivityand/or performance reductions.

Other exemplary devices which could be connected in the long termevolution architecture 400 are tablet computers, hand held music oraudio players having networking capabilities, vehicles equipped withmobile network access, network televisions, conferencing systems, onlinegame systems, GPS devices, portable computing devices, wirelessterminals, desktop computers, laptop computers, personal wirelessdevices, etc. Such devices can include capabilities for producing mediacommunications, including audio, video, text, and any othercommunication format, and can contain media engines which format andmanipulate raw data into packets for communication. In many mediaengines, the data requires modulation and manipulation to correctlyformat the data into packets; in other media engines, the data needsonly to be formatted and inserted into packet configurations.

While the alternate path 426 in FIG. 4 is shown to include a Femtocelland a serving gateway, those of skill in the art will readily understandthat the alternate path 426 can include other network components andtechnologies. For example, the alternate path 426 can include a homenetwork, a UTRAN, a GERAN, a WiFi network, an SGSN, a WIMAX network, aUMTS network, a CDMA 2000 network, an LTE network, a base station, amodem, a router, a GPS receiver, a satellite, a Bluetooth device, and soforth. The Femtocell and serving gateway in the alternate path 426 arenon-limiting examples provided for illustration purposes.

Having disclosed some basic system components and concepts, thedisclosure now turns to the exemplary method embodiment shown in FIG. 5.For the sake of clarity, the method is discussed in terms of anexemplary system 100, as shown in FIG. 1, configured to practice themethod. The steps outlined herein are exemplary and can be implementedin any combination thereof, including combinations that exclude, add, ormodify certain steps.

The system 100 first determines an on-demand quality of service for asegment of a communication path between a user equipment communicatingwith a radio access network connected to a core network and an externalnetwork connected to the core network (500). The segment can be aportion of the communication path or the entire communication path. Theuser equipment can be any wireless device, such as a mobile phone, acomputer, a portable media device, an online gaming system, a GPSdevice, a network television, a Femtocell, a conferencing system, awireless terminal, a mobile station, a network card, a modem, a personalwireless device, a handheld device, and so forth. The radio accessnetwork can include one or more GSM networks, GRANs, GERANs, UTRANs,E-UTRANs, WIMAX networks, WiFi networks, Femtocells, GPRS networks, andso forth. Also, the radio access network can carry many types oftraffic, such as circuit-switched and packet-switched traffic, forexample. The core network can be, for example, a system architectureevolution network, an evolved packet core network, a GPRS core network,an LTE core network, an LTE advanced network, a provider network, apacket data network, a cellular network, etc. The external network caninclude a public network, such as the Internet, and/or a privatenetwork, such as a LAN, a home network, a VPN, a virtual local areanetwork, an intranet, an enterprise network, and virtually any otherform of network. The external network can be, for example, an internetservice provider network, a packet-switched network, a circuit-switchednetwork, a public switched telephone network, an IMS network, a packetdata network, an LTE network, an LTE advanced network, a core network, aGPRS network, a WiFi network, a GSM network, a WIMAX network, etc.

The system 100 can determine the on-demand quality of service bymonitoring the segment of the communication path and calculating qualityof service related measurements for the segment, such as bandwidth,delay, loss, bit rate, jitter, error rate, signal power,signal-to-noise-ratio, congestion, and so forth. In one embodiment, thesystem 100 determines the on-demand quality of service for every segmentof a communication path between the user equipment communicating withthe radio access network connected to a core network and the externalnetwork connected to the core network. In another embodiment, the system100 monitors PM and FM data in the segment and calculates quality ofservice related measurements for the segment. In yet another embodiment,the system 100 monitors PM and FM data in the communication path andcalculates an end-to-end quality of service.

Then, the system 100 determines if the on-demand quality of service forthe segment meets a quality of service requirement (502). The system 100can make the determination by analyzing the on-demand quality of servicecalculated for the segment/communication path and the quality of servicerequirement. For example, the system 100 can make the determination bycomparing the on-demand quality of service calculated for the segment(and/or the communication path) with the quality of service requirement.Also, the system 100 can use quality of service related measurements todetermine if the on-demand quality of service meets the quality ofservice requirement. In some cases, the system 100 can make thedetermination based only on the on-demand quality of service calculated.For example, the system 100 can assume that the quality of servicerequirement cannot be met if the system 100 detects that a segment ordevice in the communication path has reached an upper capacity limit, ifa segment or device in the communication path is unresponsive, if theend-to-end communication path experiences an interruption, if theon-demand quality of service falls below a threshold, etc.

In one embodiment, the system 100 detects an on-demand applicationquality of service need, and determines if the communication path canmeet the on-demand application quality of service need by evaluating PMand FM data collected by monitoring the communication path. In anotherembodiment, the system 100 detects an end-to-end application quality ofservice requirement, and decides if the communication path can meet theend-to-end application quality of service based on end-to-end trafficstatistics. In yet another embodiment, the system 100 receives a qualityof service request from a policy entity and analyzes PM and FM data inthe communication path to determine if the quality of service can besatisfied by the current communication path.

The quality of service requirement can be, for example, a committedquality of service, a requested quality of service, a configured qualityof service, a requisite quality of service, a quality of service need, apre-defined quality of service parameter, a throughput requirement, aminimum delay, a minimum interruption in user data transfer, and soforth. For example, the quality of service requirement can be a qualityof service requested from a remote device. Also, the quality of servicerequirement can be based on a policy, a status, a subscription, a flag,a profile, a threshold, a capacity, a local configuration, a performancerequirement, a schedule, an agreement, a parameter, an application, alocation, a service, a history, a probability, a rule, a user, a time, atopology, available resources, etc. In one embodiment, the quality ofservice requirement is a quality of service requested from a policy andcharging enforcement function. In another embodiment, the quality ofservice requirement is a quality of service setting configured on thesystem 100. In yet another embodiment, the quality of servicerequirement is a quality of service request from an application.

Next, if the on-demand quality of service for the segment does not meetthe quality of service requirement, the system 100 identifies analternate communication path between the user equipment and the externalnetwork, wherein the alternate communication path differs from thecommunication path. The system 100 can then establish the alternatecommunication path so traffic is routed through the alternatecommunication path. Alternatively, the system 100 can provide thealternate communication path to another device for coordinating thealternate communication path. For example, the system 100 can providethe alternate communication path to an MME, and the MME can then setupthe alternate communication path so traffic is routed through thealternate communication path. The system 100 can also provide a list ofalternate communication paths to an entity which selects the alternatecommunication path from the list and coordinates the alternatecommunication path.

The alternate communication path can be identified based on a cost, ahistory, a topology, a capacity, an application, a service, a schedule,a time, a location, a user, a profile, a subscriber, an agreement, apolicy, a distance, a standard, a protocol, a configuration, aparameter, a probability, a rule, a request, a duration, a threshold, abandwidth, available resources, statistics, the quality of servicerequirement, the current communication path, the user equipment, theexternal network, etc. For example, the alternate communication path canbe a different communication path selected based on a capacity to meetthe quality of service requirement. Also, the alternate communicationpath can be, for example, a best communication path from a list ofcommunication paths.

Furthermore, the alternate communication path can include one or morenetworks, systems, devices, and/or wireless technologies in thecommunication path. For example, if the communication path between theuser equipment and the external network includes an E-UTRAN, a servinggateway, and a packet data network gateway, the alternate communicationpath can replace one or more of these components for one or moredifferent components. Alternatively, the alternate communication pathcan include all of the components in the communication path between theuser equipment and the external network, but also add one or more newcomponents to the communication path. Here, a component can be addedadjacent to one or more components in the communication path. Toillustrate, the alternate communication path in one example can includethe E-UTRAN, the serving gateway, and the packet data network gateway inthe communication path shown above, and also a GERAN added to connectthe user equipment to the E-UTRAN. As another example, the alternatecommunication path can replace the E-UTRAN with a Femtocell whichconnects the user equipment to the packet data network gateway in thecommunication path.

In one embodiment, the system 100 determines that an on-demand qualityof service requirement cannot be met for an end-to-end communicationpath due to an interruption between the user equipment and an E-UTRAN.Here, the communication path between the user equipment and the externalnetwork includes the E-UTRAN, a serving gateway, and a packet datanetwork gateway. The system 100 identifies an alternate communicationpath capable of meeting the on-demand quality of service, which reroutestraffic between the user equipment and the E-UTRAN through a WiFinetwork with a 4G interface. The user equipment can connect to the WiFinetwork via a wireless network interface card, and the WiFi network canconnect the user equipment to the E-UTRAN via the 4G interface. TheE-UTRAN can connect to the serving gateway, which forwards traffic tothe packet data network gateway. The packet data network gateway canthen link the user equipment to the external network. The user equipmentcan thus continue to receive the operator's IP services withoutinterruption and without violating the quality of service requirement.In another embodiment, the alternate communication path identified bythe system 100 is a roaming architecture with home routed traffic. Here,rather than connecting to the home operator's E-UTRAN and servinggateway, the user equipment connects to a visited operator's E-UTRAN andserving gateway. The visited operator's serving gateway then forwardstraffic to the home operator's packet data network gateway, whichconnects the user equipment to the home operator's IP services.

The principles set forth herein can be applied to varioustelecommunication devices, systems, and/or networks. Non-limitingexamples of such devices, systems, and networks include WiMAX, WiFi,Femtocell technology, LTE, LTE Advanced, GPRS, Enhanced GPRS, UMTS, GSM,GRAN, GERAN, UTRAN, E-UTRAN, IMS, 3GPP2 UMB, HSPA, HSDPA, HSUPA, W-CDMA,EDGE, PSTN, etc. The principles set forth herein can also be applied tolegacy telecommunication technologies.

Embodiments within the scope of the present disclosure may also includetangible and/or non-transitory computer-readable storage media forcarrying or having computer-executable instructions or data structuresstored thereon. Such non-transitory computer-readable storage media canbe any available media that can be accessed by a general purpose orspecial purpose computer, including the functional design of any specialpurpose processor as discussed above. By way of example, and notlimitation, such non-transitory computer-readable media can include RAM,ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storageor other magnetic storage devices, or any other medium which can be usedto carry or store desired program code means in the form ofcomputer-executable instructions, data structures, or processor chipdesign. When information is transferred or provided over a network oranother communications connection (either hardwired, wireless, orcombination thereof) to a computer, the computer properly views theconnection as a computer-readable medium. Thus, any such connection isproperly termed a computer-readable medium. Combinations of the aboveshould also be included within the scope of the computer-readable media.

Computer-executable instructions include, for example, instructions anddata which cause a general purpose computer, special purpose computer,or special purpose processing device to perform a certain function orgroup of functions. Computer-executable instructions also includeprogram modules that are executed by computers in stand-alone or networkenvironments. Generally, program modules include routines, programs,components, data structures, objects, and the functions inherent in thedesign of special-purpose processors, etc. that perform particular tasksor implement particular abstract data types. Computer-executableinstructions, associated data structures, and program modules representexamples of the program code means for executing steps of the methodsdisclosed herein. The particular sequence of such executableinstructions or associated data structures represents examples ofcorresponding acts for implementing the functions described in suchsteps.

Those of skill in the art will appreciate that other embodiments of thedisclosure may be practiced in network computing environments with manytypes of computer system configurations, including personal computers,hand-held devices, multi-processor systems, microprocessor-based orprogrammable consumer electronics, network PCs, minicomputers, mainframecomputers, and the like. Embodiments may also be practiced indistributed computing environments where tasks are performed by localand remote processing devices that are linked (either by hardwiredlinks, wireless links, or by a combination thereof) through acommunications network. In a distributed computing environment, programmodules may be located in both local and remote memory storage devices.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the scope of thedisclosure. Those skilled in the art will readily recognize variousmodifications and changes that may be made to the principles describedherein without following the example embodiments and applicationsillustrated and described herein, and without departing from the spiritand scope of the disclosure.

We claim:
 1. A method comprising: determining, via a processor, aparameter associated with a communication path between a user equipmentcommunicating through a first wireless network node of a first radioaccess network to a destination equipment; and based on the parameter,changing the communication path to a new communication path between theuser equipment and the destination equipment, the new communication pathcomprising a second wireless network node of a second radio accessnetwork, wherein the first wireless network node and the second wirelessnetwork node each are in direct communication with the user equipment inthe communication path with no other network nodes between the userequipment and the first wireless network node or the second wirelessnetwork node.
 2. The method of claim 1, wherein the parameter isassociated with an on-demand quality of service determined for all orpart of the communication path.
 3. The method of claim 1, wherein thechanging to the new communication path is based on the parameter meetinga quality of service requirement.
 4. The method of claim 1, wherein thefirst radio access network is an evolved universal mobiletelecommunications system terrestrial radio access network.
 5. Themethod of claim 4, wherein the new communication path comprises one ofthe Internet, a local area network, a wide area network, and a virtualnetwork.
 6. The method of claim 1, wherein the new communication pathutilizes a wireless local area network.
 7. The method of claim 1,wherein the new communication path is between the user equipment and anexternal network.
 8. The method of claim 1, wherein the parameter isassociated with one of a bandwidth, a delay, a signal power, a packetloss, an amount of jitter, and a bit rate.
 9. The method of claim 1,wherein the parameter is associated with pre-defined quality of serviceparameters for an application.
 10. The method of claim 1, wherein thedetermining of the parameter comprises detecting an on-demandapplication quality of service need associated with the user equipment.11. A system comprising: a processor; and a non-transitorycomputer-readable storage medium having instructions stored which, whenexecuted by the processor, cause the processor to perform operationscomprising: determining a parameter associated with a communication pathbetween a user equipment communicating through a first wireless networknode of a first radio access network to a destination equipment; andbased on the parameter, changing the communication path to a newcommunication path between the user equipment and the destinationequipment, the new communication path comprising a second wirelessnetwork node of a second radio access network, wherein the firstwireless network node and the second wireless network node each are indirect communication with the user equipment in the communication pathwith no other network nodes between the user equipment and the firstwireless network node or the second wireless network node.
 12. Thesystem of claim 11, wherein the parameter is associated with anon-demand quality of service determined for all or part of thecommunication path.
 13. The system of claim 11, wherein the changing tothe new communication path is based on the parameter meeting a qualityof service requirement.
 14. The system of claim 11, wherein the firstradio access network is an evolved universal mobile telecommunicationssystem terrestrial radio access network.
 15. The system of claim 14,wherein the new communication path comprises one of the Internet, alocal area network, a wide area network, and a virtual network.
 16. Thesystem of claim 11, wherein the new communication path utilizes awireless local area network.
 17. The system of claim 11, wherein the newcommunication path is between the user equipment and an externalnetwork.
 18. The system of claim 11, wherein the parameter is associatedwith one or more of a bandwidth, a delay, a signal power, a packet loss,an amount of jitter, and a bit rate.
 19. The system of claim 11, whereinthe parameter is associated with pre-defined quality of serviceparameters for an application.
 20. A non-transitory computer-readablestorage device having instructions stored which, when executed by acomputing device, cause the computing device to perform operationscomprising: determining a parameter associated with a communication pathbetween a user equipment communicating through a first wireless networknode of a first radio access network to a destination equipment; andbased on the parameter, changing the communication path to a newcommunication path between the user equipment and the destinationequipment, wherein the new communication path comprises a secondwireless network node of a second radio access network, wherein thefirst wireless network node and the second wireless network node eachare in direct communication with the user equipment in the communicationpath with no other network nodes between the user equipment and thefirst wireless network node or the second wireless network node.